home *** CD-ROM | disk | FTP | other *** search
/ Business Assistant / Business Assistant.iso / acctg / bf018 / bkpg.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1987-11-26  |  5.9 KB  |  61 lines

  1. 1  DEF SEG
  2. 2  IF PEEK(0)=1 THEN 10
  3. 3  POKE 0,1
  4. 4  '*************** SIMPLIFIED BUSINESS BOOKKEEPING *****************************
  5. 5  '************** COPYRIGHT 1985  DONALD I. PARITZ *****************************
  6. 6  CLS:FOR N=1 TO 10:PRINT:NEXT:PRINT STRING$(79,42):PRINT:PRINT TAB(25)"SIMPLIFIED BUSINESS BOOKKEEPING":PRINT:PRINT TAB(24) "COPYRIGHT 1985   DONALD I. PARITZ":PRINT STRING$(79,42)
  7. 7  WHILE N<1000 AND X$="":X$=INKEY$:N=N+1:WEND
  8. 10  '
  9. 20  COLOR 7,0:CLS:CLEAR:KEY 7, "":KEY 8, "@":ON ERROR GOTO 300
  10. 50  PRINT:PRINT: COLOR 0,7:PRINT"     BOOKKEEPING FILE DISK MUST BE IN DRIVE  B ":COLOR 7,0:PRINT:DEFDBL A-Z:DEFINT N,I,J:PRINT "CHOOSE PROGRAM":PRINT:PRINT TAB(10) "E=EXPENSES":PRINT:PRINT TAB(10) "I=INCOME"
  11. 120  PRINT:PRINT TAB(10) "B=BANK-CHECKING ACCOUNT --- DO FIRST IF INITIATING SYSTEM":PRINT:PRINT TAB(10) "A=ACCOUNTS RECEIVABLE":PRINT:PRINT TAB(10) "F=SUMMARY OF OPERATIONS (CLOSE OUT INCOME AND EXPENSE FILES FIRST)"
  12. 140  PRINT:PRINT TAB(10) "C=CLOSE FILES AND END - BOOKKEEPING FILE DISK MUST BE IN DRIVE  B
  13. 160  PRINT:PRINT "         P=PREPARE NEW BOOKKEEPING FILE DISKS  (PAYROLL DISKS                              MUST BE PREPARED FROM PAYROLL PROGRAM)
  14. 170  PRINT:PRINT "         S=INITIALIZE SYSTEM - PREPARES NEW BOOKKEEPING,                                   PAYROLL  AND ACCOUNT RECEIVABLE FILE DISKS                                      FOR FIRST TIME SYSTEM IS USED"
  15. 180  X$=INKEY$:DEF SEG=64:POKE 23, (PEEK(23) OR 64)
  16. 200  IF X$="E" THEN RUN "EXPENSE" ELSE IF X$="I" THEN RUN "INCOME" ELSE IF X$="B" THEN RUN "CHECKING" ELSE IF X$="A" THEN RUN "ACCTREC" ELSE IF X$="F" THEN 5000 ELSE IF X$="C" THEN 30000 ELSE IF X$="P" OR X$="S" THEN 240 ELSE 180
  17. 240  CLS:PRINT:PRINT TAB(10) "REMOVE DISK FROM DRIVE  B":IF X$="P" THEN PRINT:PRINT TAB(10) "ENTER  F  WHEN A> APPEARS"
  18. 260  IF X$="S" THEN PRINT:PRINT TAB(10) "ENTER  S  WHEN A> APPEARS"
  19. 270  PRINT:PRINT:SYSTEM
  20. 300  COLOR 0,7:IF ERR=201 THEN PRINT "WRONG DISK IS IN DRIVE  A, CATEGORY OF EXPENSE FILE CANNOT BE FOUND.":GOTO 400
  21. 320  IF ERR=202 THEN PRINT "EXPENSE FILE HAS NOT BEEN CLOSED OUT FOR THIS MONTH OR WRONG DISK IS IN DRIVE  B":GOTO 400
  22. 330  IF ERR=203 THEN PRINT "INCOME FILE HAS NOT BEEN CLOSED OUT FOR THIS MONTH OR WRONG DISK IS IN DRIVE  B":GOTO 400
  23. 340  IF ERR=204 THEN PRINT "EXPENSE TOTALS FILE CANNOT BE FOUND.":PRINT:PRINT "WRONG DISK IN DRIVE  B  .":GOTO 400
  24. 350  IF ERR=205 THEN PRINT "INCOME TOTALS FILE CANNOT BE FOUND.":PRINT:PRINT "WRONG DISK IN DRIVE  B  .":GOTO 400
  25. 360  IF ERR=71 THEN PRINT "DISK NOT IN DRIVE  A  OR  DRIVE DOOR IS OPEN.":GOTO 400
  26. 370  IF ERR=24 OR ERR=27 THEN PRINT "PRINTER NOT ON OR OUT OF PAPER.":PRINT:PRINT "SET TOP OF PAGE AND TURN ON PRINTER.":GOTO 400
  27. 380  PRINT "AN UNDEFINED ERROR HAS OCCURRED":GOTO 400
  28. 400  PRINT:PRINT TAB(10) "F8 = ERROR CORRECTED - CONTINUE":PRINT:PRINT TAB(10) "ESC = RETURN TO MENU"
  29. 410  X$=INKEY$:IF X$="@" THEN COLOR 7,0:CLS:RESUME ELSE IF X$=CHR$(27) THEN 20 ELSE 410
  30. 430  '
  31. 5000  CLS:PRINT:PRINT TAB(10) "BOOKKEEPING FILE DISK WITH MOST RECENT CLOSED OUT INCOME AND EXPENSE FILES MUST BE IN DRIVE  B .":PRINT:PRINT "READY PRINTER.":PRINT:PRINT:DEFDBL A-Z:DEFINT N,I,J:DL$="$$#########.##":INPUT "LAST MONTH CLOSED OUT ";MON$
  32. 5070  EXFL$="B:EXPENSE."+LEFT$(MON$,3):INFL$="B:INCOME."+LEFT$(MON$,3):OPEN "CATEGORY.FIL" AS 1:IF LOF(1)/128=0 THEN ERROR 201
  33. 5090  FIELD 1, 44 AS L$:FOR N= 1 TO LOF(1)/128:GET 1,N:IF LEFT$(L$,8)="PURCHASE" THEN IPUR=N
  34. 5130  NEXT:CLOSE 1:OPEN EXFL$ AS 1:IF LOF(1)/128=0 THEN ERROR 202
  35. 5160  FIELD 1, 8 AS D$, 8 AS C$, 25 AS B$, 9 AS A$, 18 AS E$:FOR N=2 TO LOF(1)/128:GET 1,N:IF LEFT$(E$,1)="*" THEN 5220
  36. 5200  TEXP=TEXP+CVD(A$):IF LEFT$(E$,8)="PURCHASE" THEN TPUR=TPUR+CVD(A$)
  37. 5220  NEXT:CLOSE 1:OPEN INFL$ AS 1:IF LOF(1)/128=0 THEN ERROR 203
  38. 5250  FOR N=2 TO LOF(1)/128:FIELD 1, 8 AS D$, 10 AS B$, 10 AS A$, 15 AS F$, 30 AS S$, 5 AS X$:GET 1,N:TDEP=TDEP+CVD(B$):IF LEFT$(X$,1)="M" THEN TMISC=TMISC+CVD(A$):GOTO 5320
  39. 5300  FIELD 1, 8 AS D$, 10 AS B$, 10 AS A$, 8 AS E$, 8 AS N$, 8 AS T$, 8 AS R$, 8 AS G$, 8 AS X$:TINC=TINC+CVD(N$)+CVD(T$)+CVD(R$)+CVD(X$)
  40. 5320  NEXT:DAT$=D$:CLOSE 1:OPEN "B:EXPENSE.TOT" AS 1:IF LOF(1)/128=0 THEN ERROR 204
  41. 5360  FIELD 1, 12 AS Q$:GET 1, IPUR:TTPUR=CVD(Q$):GET 1,LOF(1)/128:TTEXP=CVD(Q$):CLOSE 1:OPEN "B:INCOME.TOT" AS 1:IF LOF(1)/128=0 THEN ERROR 205
  42. 5430  FIELD 1, 12 AS Q$:GET 1, 12:TTSAL=CVD(Q$):FOR N=9 TO 11:GET 1,N:TTMISC=TTMISC+CVD(Q$):NEXT:GET 1,1:TTDEP=CVD(Q$):CLS:PRINT:PRINT TAB(10) "SUMMARY OF OPERATIONS ENDING        "+DAT$+"         YTD"
  43. 5530  PRINT:PRINT "SALES                                   ";:PRINT USING DL$;TINC;TTSAL:LPRINT CHR$(27)CHR$(69)+CHR$(27)CHR$(71):LPRINT:LPRINT TAB(10) "SUMMARY OF OPERATIONS ENDING        "+DAT$+"         YTD"
  44. 5570  LPRINT CHR$(27)CHR$(70)+CHR$(27)CHR$(72):LPRINT "SALES                                   ";:LPRINT USING DL$;TINC;TTSAL:PRINT "COST OF MERCHANDISE SOLD                ";:PRINT USING DL$;TPUR;TTPUR
  45. 5610  LPRINT "COST OF MERCHANDISE SOLD                ";:LPRINT USING DL$;TPUR;TTPUR:PRINT TAB(40) STRING$(39,45):LPRINT TAB(40) STRING$(39,45):PRINT "              GROSS PROFIT ON SALES     ";:PRINT USING DL$;TINC-TPUR;TTSAL-TTPUR
  46. 5670  LPRINT "              GROSS PROFIT ON SALES     ";:LPRINT USING DL$;TINC-TPUR;TTSAL-TTPUR:PRINT:PRINT "EXPENSES                                ";:PRINT USING DL$;TEXP-TPUR;TTEXP-TTPUR:LPRINT:LPRINT "EXPENSES                                ";
  47. 5720  LPRINT USING DL$;TEXP-TPUR;TTEXP-TTPUR:PRINT TAB(40) STRING$(39,45):LPRINT TAB(40) STRING$(39,45):PRINT "              NET INCOME FROM SALES     ";:PRINT USING DL$;TINC-TEXP;TTSAL-TTEXP:LPRINT "              NET INCOME FROM SALES     ";
  48. 5780  LPRINT USING DL$;TINC-TEXP;TTSAL-TTEXP:PRINT:PRINT "OTHER INCOME                            ";:PRINT USING DL$;TMISC;TTMISC:LPRINT:LPRINT "OTHER INCOME                            ";:LPRINT USING DL$;TMISC;TTMISC:PRINT TAB(40) STRING$(39,45)
  49. 5840  PRINT "                         TOTAL NET      ";:PRINT USING DL$;TINC+TMISC-TEXP;TTSAL+TTMISC-TTEXP:LPRINT TAB(40) STRING$(39,45):LPRINT "                         TOTAL NET      ";:LPRINT USING DL$;TINC+TMISC-TEXP;TTSAL+TTMISC-TTEXP
  50. 5890  PRINT:PRINT TAB(10) "CASH FLOW":PRINT:PRINT "DEPOSITS                                ";:PRINT USING DL$;TDEP;TTDEP:LPRINT CHR$(27)CHR$(69)+CHR$(27)CHR$(71):LPRINT:LPRINT TAB(10) "CASH FLOW"
  51. 5930  LPRINT CHR$(27)CHR$(70)+CHR$(27)CHR$(72):LPRINT "DEPOSITS                                ";:LPRINT USING DL$;TDEP;TTDEP:PRINT "PAID OUT                                ";:PRINT USING DL$;TEXP;TTEXP:PRINT TAB(40) STRING$(39,45)
  52. 5980  PRINT "                          NET CASH      ";:PRINT USING DL$;TDEP-TEXP;TTDEP-TTEXP:LPRINT "PAID OUT                                ";:LPRINT USING DL$;TEXP;TTEXP:LPRINT TAB(40) STRING$(39,45)
  53. 6030  LPRINT "                          NET CASH      ";:LPRINT USING DL$;TDEP-TEXP;TTDEP-TTEXP:LPRINT CHR$(12):PRINT:PRINT TAB(10) "PRESS  F8  TO RETURN TO MENU"
  54. 6070  X$=INKEY$:IF X$<>"@" THEN 6070 ELSE 20
  55. 30000  OPEN "B:BACKUP.FIL" AS 4:IF LOF(4)/128=0 THEN 30020 ELSE GOSUB 30070
  56. 30020  CLS:PRINT:PRINT TAB(10) "ENTER  A  FOR FILE BACKUP MENU":SYSTEM
  57. 30070  OPEN "B:B.BAT" FOR OUTPUT AS 3:FOR N=1 TO LOF(4)/128:FIELD 4, 14 AS A$:GET 4,N:IF LEFT$(A$,6)="CHKDSC" THEN CHKDSC=1:GOTO 30150
  58. 30140  PRINT #3, "COPY "+A$+" "+"B:"
  59. 30150  NEXT:IF CHKDSC THEN PRINT #3, "CHKDSK A:":PRINT #3, "CHKDSK B:"
  60. 30155  PRINT #3, "REM  REMOVE BOTH DISKS":PRINT #3, "REM  INSERT PROGRAM DISK IN DRIVE A":PRINT #3, "REM  ENTER  A  WHEN READY":CLOSE 3:CLOSE 4:KILL "B:BACKUP.FIL":RETURN
  61.